package com.cloudwise.io;

import java.io.File;
import java.io.IOException;

/**
 * @author ：Teacher陈
 * @date ：Created in 2020/12/29 9:17
 * @description：测试文件
 * @modified By：
 * @version: 1.0
 */
public class FileTest {
    /**
     * @create by: Teacher陈
     * @description: 列出指定目录下的所有文件和文件夹，包括名称，大小，类型
     * @create time: 2020/12/29 9:47
     * @param path  路径
     * @return
     */
    public  static   void printFiles(String path){
        File  file  =new File(path);
        //判断path是否存在，判断path是否为文件夹
        if(!file.exists()||!file.isDirectory()){
            return ;
        }else{
            //获取path下面一级的所有file对象
            File[] listFiles = file.listFiles();
            for (File listFile : listFiles) {
                if(listFile.isDirectory()){
                    System.out.println("文件夹名："+listFile.getName());
                    //开始递归打印目录下级文件
                    printFiles(listFile.getPath());
                }else {
                    System.out.println("文件名："+listFile.getName()+"大小"+listFile.length());
                }
            }
        }
    }

    public static void main(String[] args) throws IOException {
        //创建文件
      //  File file= new File("d:\\aaa");
       // file.createNewFile();
        //创建文件夹
        //mkdirs可以创建多级目录，上级不存在可以自动创建
        /*File file= new File("d:\\ccc\\ddd\\eee");
        boolean mkdir = file.mkdirs();
        if(mkdir){
            System.out.println("创建成功");
        }else {
            System.out.println("创建失败");
        }*/
        //文件删除
       // File file= new File("f:\\apache-tomcat-8.5.37.tar.gz");
      /*  boolean delete = file.delete();
        System.out.println(delete);*/
      //查看文件是否存在
       /* boolean exists = file.exists();
        System.out.println(exists);*/
       //判断文件名是否是目录
        /*boolean directory = file.isDirectory();
        System.out.println(directory);
        System.out.println(file.length());*/
        File file = new File("d:\\ccc");
     /*   String[] list = file.list();
        for (String s : list) {
            System.out.println(s);
        }*/
      /*  File[] files = file.listFiles();
        for (File file1 : files) {
            System.out.println(file1.getName()+"||"+file1.length()+"类型"+file1.isDirectory());
        }
        //列出指定目录下的所有文件和文件夹，包括名称，大小，类型*/
      FileTest.printFiles("D:\\ccc");

    }
}
